草庐IT

php - Laravel 5 将数据从 Controller 传递到命令

全部标签

ruby - 如何在 Ruby 脚本中为命令 shell 获取环境变量?

我正在尝试从我的ruby​​程序中运行一些第三方bash脚本。在我运行它们之前,它们要求我获取一个文件。在命令行上它一切正常,但在Ruby中它不起作用。我发现系统命令将打开一个新的子shell进程,任何采购都将在其中完成,并且无法从运行Ruby脚本的父shell进程中看到。当系统调用结束时,子shell也被杀死。我该如何解决这个问题? 最佳答案 这样做:$sourcewhatever.sh$set>variables.txt然后在Ruby中:File.readlines("variables.txt").eachdo|line|va

ruby-on-rails - 有没有办法拥有多个 seeds.rb 文件?任何类型的 'versioning' 用于种子数据?

我们需要为一些新添加的表添加更多种子数据到我们的Rails项目的“版本100”。但是,如果我们简单地将它添加到seeds.rb中并重新运行rakedb:seed命令,它当然会重新添加原始种子数据,复制它。因此,如果您已经将种子数据添加到seeds.rb中,例如,TableOne...我们如何在开发的后期阶段为TableTwo和TableThree增量添加种子数据?我希望我可以简单地创建一个新的seeds_two.rb文件并运行rakedb:seeds_two但这给出了一个错误不知道如何构建任务“db:seeds_two”所以看起来只能使用“seeds.rb”。人们如何维护对种子数据的增

ruby - 在 Resque-Worker 中将对象作为参数传递

有没有办法在Resque-workers中将对象作为参数值传递。我想做这样的事情Resque.enqueue(SomeWorker,obj)而不是Resque.enqueue(SomeWorker,id)我的对象是不同类型的没有身份证。感谢任何帮助。 最佳答案 作为最佳实践,您永远不应将真实对象传递给worker。这个想法是您将最少的信息传递给您的工作人员,最好是一个ID,以便工作人员可以自己检索其余信息。由于数据保存在Redis中,您实际上需要在排队时以某种方式编码您的对象,然后在工作人员检索数据时解码它。如果您的对象只是保存一些

ruby-on-rails - 如何从命令行停止 Rails 服务器?

我有一个奇怪的事件,我关闭了我的终端,但服务器继续运行。当我尝试再次运行服务器时,我收到一条消息,表明服务器仍在运行。如何通过命令行停止服务器? 最佳答案 方法1:只需在运行服务器的终端中键入:Ctrl+C。方式2:另一种方式:在您的终端中找出进程的PID:$lsof-wnitcp:3000然后,终止进程:$kill-9PID方法3:您还可以使用以下命令杀死所有正在运行的名称中包含rails的应用程序:killall-9rails 关于ruby-on-rails-如何从命令行停止Rail

ruby-on-rails - 如何在 Ruby on Rails 中添加自定义路由、 Controller 和操作?

我有一个RubyonRails和ActiveAdmin应用程序。除了添加和注册一些模型外,我基本上没有更改任何默认配置。我想使用类似GET/heartbeat的路由启用我的应用程序,并使用简单的字符串响应客户端/用户。我想知道如何执行以下步骤:将自定义路由添加到我的routes.rb文件。在app/controllers路径下添加自定义Controller。执行自定义操作并在没有任何View的情况下直接响应用户。 最佳答案 路线.rb:get'heartbeat'=>"custom_controller#heartbeat"自定义C

ruby - 使用 Ruby 在命令行中包含文件

当这样运行ruby​​脚本时rubysome-script.rb我如何在其中动态包含一个文件(例如配置文件)? 最佳答案 如您所见,-r选项是您的好helper。它还适用于IRB:irb-ropen-uri将执行与require'open-uri'相同的操作FWIW,我需要通过命令行包含的最常见的东西是ruby​​gems。由于较新版本的ruby​​带有内置的gems,我不想编辑该文件,但包含它以进行测试。幸运的是,创造gem的人们添加了一点别名糖。您可以执行以下操作:ruby-rubygemsmyscript.rb而不是丑陋的:r

ruby-on-rails - 如何在 RoR 中上传文本文件并将内容解析到数据库中

到目前为止,我已经成功上传了一个文件:#Innew.html.erb并访问Controller中的文件#Incontroller#create@text=params[:upload][:file]但是,这给我的只是文件名,而不是文件的内容。如何访问其内容?我知道这是一个跳跃,但是一旦我可以访问文件的内容,是否可以上传文件夹并遍历文件? 最佳答案 完整示例以上传包含联系人的导入文件为例。您无需存储此导入文件,只需对其进行处理并丢弃即可。路线routes.rbresources:contactsdocollectiondoget'im

ruby-on-rails - 有没有办法在所有 Heroku 测功机上运行命令?

我有N个Rails应用程序测功机,我想对所有测功机运行一个命令。有办法吗?运行railsr"SomeRubyCode"是否会在所有dynos上执行?我使用的插件每M分钟与第三方同步一次。问题是,有时第3方服务会超时,我想再次运行它而不必再等待M分钟。 最佳答案 没有。一次性命令(如herokurunbash)在另一个一次性dyno上运行。您需要设置某种pubsub/消息队列,所有dynos都会收听以完成此操作。https://devcenter.heroku.com/articles/one-off-dynos

ruby-on-rails - Ruby On Rails 自定义路由总是重定向到 Controller 的显示操作

我正在尝试创建一条新路线,以便我可以利用RoR的路径变量功能,即new_game_path。就我而言,我想使用load_game_path我已经为适当的Controller创建了一个Action,目前路由如下:resources:gamesdoget'load',on::collectionend每次我使用load_games_path它都使用正确的URI,但似乎重定向到GamesController的显示操作并显示游戏的继承显示View。我检查了rakeroutes,我看到我新创建的路线似乎是所需的路径/games/load(文件路径:/views/games/load.html.e

ruby - 将变量传递给 Liquid 模板中的模型实例方法

这个周末我一直在研究Liquid模板引擎,我想知道以下是否可行。假设我在Blog模型中有一个latest_posts方法,我可以将一个整数传递给该方法以获取最新的N篇文章。是否可以在液体模板中使用该方法?例如:classBloghas_many:postsdeflatest_posts(n)posts.latest(n)#usinganamedscopeenddefto_liquid(*args){'all_posts'=>posts.all,#allowsmetouse{%forpostsinblog.all_posts%}'last_post'=>post.last,#allows